/**************************************************************************************
 *
 * @(#) HomePageBiz.java
 * @Package com.jgdt.jgdtkasannong_university_gene_backend.biz.content.impl
 **************************************************************************************/
package com.jgdt.jgdtkasannong_university_gene_backend.biz.content;


import com.jgdt.jgdtkasannong_university_gene_backend.vo.base.CheckimportVo;
import com.jgdt.jgdtkasannong_university_gene_backend.vo.content.excel.research_achievements.data.AchievementDataVo;
import com.jgdt.jgdtkasannong_university_gene_backend.vo.content.excel.research_team.data.TeamDataVo;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;


/**
 * @description: 模板-biz
 * @author: huangAn
 * @createDate: 2025/04/24
 */
public interface TemplatetBiz {

    /**
     * 根据菜单id查下载模板
     * @param response
     * @param menuId
     */
    void downloadByMenu(HttpServletResponse response, Integer menuId);


    /**
     * 获取科研团队模板数据
     * @param menuId
     * @return
     */
     TeamDataVo queryTeamLeader(Integer menuId);

    /**
     * 获取科研成果模板数据
     * @param menuId
     * @return
     */
    AchievementDataVo queryAchievement(Integer menuId);

    /**
     * 校验文件上传数据
     * 此处后期可以优化成异步，做异步前，首先进行表格校验
     * @param file
     * @param menuId
     */
    CheckimportVo checkImportData(MultipartFile file, Integer menuId);

    /**
     * 文件上传-同步
     * 此处后期可以优化成异步，做异步前，首先进行表格校验
     * @param file
     * @param menuId
     */
    void importData(MultipartFile file, Integer menuId);

    /**
     * 校验图片
     * @param file
     */
    String checkFile(MultipartFile file);
    /**
     * 文件上传-异步
     * 此处后期可以优化成异步，做异步前，首先进行表格校验
     * @param file
     * @param menuId
     */
    void importDataAsync(MultipartFile file, Integer menuId);
}




